// pages/my/myPhone/myPhone.js
let app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    url: '',
    user: {},
    formattedPhone: '' // 新增：存储格式化后的手机号
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setData({
      url: app.globalData.url
    });
    this.getUserInfo();
  },

  /**
   * 页面显示时重新获取用户信息
   */
  onShow() {
    this.getUserInfo();
  },

  /**
   * 获取用户信息并更新数据
   */
  getUserInfo() {
    try {
      // 尝试获取本地存储的用户信息
      const user = wx.getStorageSync('user') || {};
      console.log('获取到的用户信息：', user);
      
      // 直接处理手机号并存储到data中
      const formattedPhone = this.formatPhone(user.phone || '');
      
      // 一次性更新数据
      this.setData({
        user: user,
        formattedPhone: formattedPhone
      });
      
    } catch (e) {
      console.error('获取用户信息失败：', e);
      this.setData({
        formattedPhone: '获取信息失败'
      });
      wx.showToast({
        title: '获取信息失败',
        icon: 'none',
        duration: 2000
      });
    }
  },

  /**
   * 手机号格式化：处理4-9位为*
   */
  formatPhone(phone) {
    console.log('原始手机号：', phone);
    
    // 确保phone是字符串类型
    const phoneStr = String(phone).trim();
    
    if (!phoneStr) {
      return '未绑定手机号';
    }
    
    // 移除可能存在的空格或其他字符
    const purePhone = phoneStr.replace(/\D/g, '');
    
    if (purePhone.length !== 11) {
      return '手机号格式错误';
    }
    
    // 格式化并返回
    return purePhone.substring(0, 3) + '******' + purePhone.substring(9);
  },

  /**
   * 更换手机号按钮点击事件
   */
  changePhone() {
    wx.navigateTo({
      url: '/pages/my/myPhone/changePhone/changePhone', // 确保路径正确
      fail: (err) => {
        console.error('跳转失败：', err);
        wx.showToast({
          title: '跳转失败',
          icon: 'none'
        });
      }
    });
  },

  // 其他生命周期方法
  onReady() {},
  onHide() {},
  onUnload() {},
  onPullDownRefresh() {
    this.getUserInfo();
    wx.stopPullDownRefresh();
  },
  onReachBottom() {},
  onShareAppMessage() {}
})
    